package de.tum.in.eist.poll.shared;

import java.io.Serializable;

@SuppressWarnings("serial")
/**
 * Representation of a university lecture, which belongs to a course.
 * 
 */
public class Lecture implements Serializable {

	/** The lecture's identification number as stored in the database's lecture table.*/
	private int number;
	/** The lecture's title. Need not be unique.*/
	private String title;
	/** Date String of format yyyy-mm-dd.*/
	private String date;
	/** The identification number of the course this lecture is part of as stored in the database's course table.*/
	private int parentCourseID;
	/** The title of the course this lecture is part of as stored in the database's course table.*/
	private String parentCourseTitle;
	/** The the university-level code of the course this lecture is part of as stored in the database's course table. Ex.: IN0001 or Econ-101*/
	private String parentCourseCode;	
	
	/**
	 * Default constructor.
	 * 
	 * @deprecated Empty Lecture objects should be avoided.
	 */
	public Lecture(){
		number = 0;
		date = "";
	}
	
	/**
	 * Full constructor.
	 * 
	 */
	public Lecture(int number, String title, String date, int parentCourseID, String parentCourseTitle, String parentCourseCode) {
		this.number = number;
		this.title = title;
		this.date = date;
		this.parentCourseID = parentCourseID;
		this.parentCourseTitle = parentCourseTitle;
		this.parentCourseCode = parentCourseCode;
	}
	
	/**
	 *@return {@link #number}
	 */
	public int getNumber() {
		return number;
	}
	

	/**
	 *@return {@link #date}
	 */
	public String getDate() {
		return date;
	}
	
	/**
	 *@return {@link #title}
	 */
	public String getTitle() {
		return title;
	}

	/**
	 *@return {@link #parentCourseID}
	 */
	public int getParentCourseID() {
		return parentCourseID;
	}

	/**
	 *@return {@link #parentCourseTitle}
	 */
	public String getParentCourseTitle() {
		return parentCourseTitle;
	}

	/**
	 *@return {@link #parentCourseCode}
	 */
	public String getParentCourseCode() {
		return parentCourseCode;
	}
}